/*
 * @Description: In User Settings Edit
 * @Author: your name
 * @Date: 2019-09-07 14:48:59
 * @LastEditTime: 2019-09-07 15:30:18
 * @LastEditors: Please set LastEditors
 */
/*
 * @lc app=leetcode.cn id=29 lang=javascript
 *
 * [29] 两数相除
 *
 * https://leetcode-cn.com/problems/divide-two-integers/description/
 *
 * algorithms
 * Medium (18.65%)
 * Likes:    174
 * Dislikes: 0
 * Total Accepted:    20K
 * Total Submissions: 107.3K
 * Testcase Example:  '10\n3'
 *
 * 给定两个整数，被除数 dividend 和除数 divisor。将两数相除，要求不使用乘法、除法和 mod 运算符。
 * 
 * 返回被除数 dividend 除以除数 divisor 得到的商。
 * 
 * 示例 1:
 * 
 * 输入: dividend = 10, divisor = 3
 * 输出: 3
 * 
 * 示例 2:
 * 
 * 输入: dividend = 7, divisor = -3
 * 输出: -2
 * 
 * 说明:
 * 
 * 
 * 被除数和除数均为 32 位有符号整数。
 * 除数不为 0。
 * 假设我们的环境只能存储 32 位有符号整数，其数值范围是 [−2^31,  2^31 − 1]。本题中，如果除法结果溢出，则返回 2^31 − 1。
 * 
 * 
 */
/**
 * @param {number} dividend
 * @param {number} divisor
 * @return {number}
 */
var divide = function(dividend, divisor) {
    const len1 = dividend.toString().length
    const len2 = divisor.toString().length
    const xq_len = len1 - len2
    let ans 

    if((dividend<0 && divisor>0) || (dividend>0 && divisor<0)) status = false
    dividend = Math.abs(dividend)
    divisor = Math.abs(divisor)


    for(let i=xq_len;i>=0;i--){
        let num = divisor
        let c = 1
        for(let j=1;i<=i;j++){
            num+='0'
            c+='0'
            
        }
        console.log(num,c,dividend,num)
        while((+dividend) > (+num)){
            dividend = dividend -num
            ans = ans + (+c)
            console.log(dividend,ans)
        }
    }

    return ans
};

